perm filename CYCOMC.LAP[1,LMM] blob sn#034824 filedate 1973-04-12 generic text, type T, neo UTF8
(COMMENT IO FUNCTIONS) 

(LAP PRINRAD SUBR) 
	(PUSH P 1) 
	(CALL 1 (E PRINT)) 
	(MOVE 1 0 P) 
	(CALL 1 (E NUMNODES)) 
	(PUSH P 1) 
	(CALL 1 (E PRINRAD0)) 
	(PUSH P 0 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVEI 2 (QUOTE 1)) 
	(MOVE 1 -1 P) 
	(CALL 2 (E *LESS)) 
	(JUMPN 1 TAG4) 
	(MOVE 2 0 P) 
	(MOVE 1 -1 P) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 0 P) 
TAG2 
TAG3 	(MOVEI 2 (QUOTE -1)) 
	(MOVE 1 -1 P) 
	(CALL 2 (E *PLUS)) 
	(MOVEM 1 -1 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 2 0 P) 
	(MOVE 3 -3 P) 
	(MOVEI 1 (QUOTE NIL)) 
	(CALL 3 (E PRINRAD1)) 
	(SUB P (C 0 0 2 2)) 
	(MOVE 1 -1 P) 
	(CALL 1 (E PRINRADOFF)) 
	(MOVEI 1 (QUOTE NIL)) 
	(SUB P (C 0 0 2 2)) 
	(POPJ P) 
	NIL 

(LAP NUMNODES SUBR) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE 0) 0)) 
	(HRRZ@ 1 1) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -1 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVEM 1 0 P) 
	(HRRZ@ 1 1) 
	(PUSH P 1) 
	(HLRZ@ 1 -1 P) 
	(CALL 1 (E NUMNODES)) 
	(POP P 2) 
	(CALL 2 (E *TIMES)) 
	(MOVE 2 -2 P) 
	(CALL 2 (E *PLUS)) 
	(MOVEM 1 -2 P) 
TAG2 
TAG3 	(HRRZ@ 1 -1 P) 
	(MOVEM 1 -1 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 -2 P) 
	(MOVEM 1 -2 P) 
	(HLRZ@ 1 -3 P) 
	(JUMPN 1 TAG10) 
	(MOVEI 2 (QUOTE 0)) 
	(JRST 0 TAG9) 
TAG10 	(HLRZ@ 1 -3 P) 
	(CALL 1 (E ATOM)) 
	(JUMPE 1 TAG11) 
	(MOVEI 2 (QUOTE 1)) 
	(JRST 0 TAG9) 
TAG11 	(HLRZ@ 1 -3 P) 
	(HRRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(CAIN 1 (QUOTE STRUC)) 
	(JRST 0 TAG12) 
	(MOVEI 2 (QUOTE 1)) 
	(JRST 0 TAG9) 
TAG12 	(HLRZ@ 1 -3 P) 
	(HRRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(CALL 1 (E NODES)) 
	(CALL 1 (E LENGTH)) 
	(MOVE 2 1) 
TAG13 
TAG9 	(MOVE 1 -2 P) 
	(SUB P (C 0 0 4 4)) 
	(JCALL 2 (E *PLUS)) 
	NIL 

(LAP PRINRAD1 SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 3) 
	(HLRZ@ 1 3) 
	(PUSH P 1) 
	(HRRZ@ 1 3) 
	(CALL 1 (E CLEXPAND)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(MOVE 1 -4 P) 
	(JUMPN 1 TAG21) 
	(HLRZ@ 1 -6 P) 
	(PUSH P 1) 
	(HRRZ@ 1 -7 P) 
	(HLRZ@ 1 1) 
	(HLRZ@ 3 -4 P) 
	(HRRZ@ 2 -7 P) 
	(PUSH P 1) 
	(HLRZ@ 1 -8 P) 
	(CALL 3 (E PRINRAD1)) 
	(MOVE 2 -1 P) 
	(CALL 2 (E XCONS)) 
	(HRRZ@ 3 -5 P) 
	(HLRZ@ 3 3) 
	(MOVE 2 1) 
	(POP P 1) 
	(CALL 3 (E PRINRAD1)) 
	(SUB P (C 0 0 1 1)) 
	(JRST 0 TAG20) 
TAG21 	(CALL 1 (E ATOM)) 
	(JUMPN 1 TAG23) 
	(HRRZ@ 1 -4 P) 
	(HLRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(CAIN 1 (QUOTE STRUC)) 
	(JRST 0 TAG22) 
TAG23 	(HRRZ@ 1 -6 P) 
	(MOVEM 1 -1 P) 
	(PUSH P -3 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVE 2 -3 P) 
	(MOVEM 1 -1 P) 
	(HLRZ@ 1 -4 P) 
	(CALL 2 (E CONS)) 
	(MOVE 3 -1 P) 
	(MOVE 2 -4 P) 
	(MOVEM 1 -3 P) 
	(HLRZ@ 1 -9 P) 
	(CALL 3 (E PRINRAD1)) 
	(MOVEM 1 -4 P) 
TAG2 
TAG3 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(HLRZ@ 1 -9 P) 
	(MOVEM 1 -2 P) 
	(MOVE 3 -10 P) 
	(JUMPE 3 TAG29) 
	(MOVE 2 -3 P) 
	(MOVE 1 3) 
	(CALL 2 (E CONS)) 
	(EXCH 3 1) 
	(JRST 0 TAG28) 
TAG29 	(MOVE 3 -3 P) 
TAG30 
TAG28 	(MOVE 2 -7 P) 
	(MOVE 1 -2 P) 
	(CALL 3 (E PRINENTRY)) 
	(MOVE 1 -4 P) 
	(SUB P (C 0 0 3 3)) 
	(JRST 0 TAG20) 
TAG22 	(MOVE 1 -7 P) 
	(JUMPN 1 TAG35) 
	(MOVE 1 -6 P) 
	(JRST 0 TAG34) 
TAG35 	(MOVE 1 -7 P) 
	(CALL 1 (E NCONS)) 
	(HLRZ@ 2 -6 P) 
	(CALL 2 (E XCONS)) 
	(HLRZ@ 2 -4 P) 
	(CALL 2 (E XCONS)) 
	(CALL 1 (E NCONS)) 
	(MOVEM 1 -2 P) 
	(HRRZ@ 1 -6 P) 
TAG36 
TAG34 	(MOVEM 1 -1 P) 
	(HRRZ@ 1 -4 P) 
	(HLRZ@ 1 1) 
	(CALL 1 (E NODES)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG5 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG8) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(HLRZ@ 2 -7 P) 
	(CALL 2 (E EQUAL)) 
	(JUMPN 1 TAG7) 
	(HLRZ@ 1 -4 P) 
	(CALL 1 (E NCONS)) 
	(MOVE 2 -1 P) 
	(CALL 2 (E XCONS)) 
	(MOVE 2 -5 P) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 -5 P) 
	(HRRZ@ 1 -4 P) 
	(MOVEM 1 -4 P) 
TAG6 
TAG7 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG5) 
TAG8 	(MOVE 1 0 P) 
	(HRRZ@ 1 -7 P) 
	(HRRZ@ 1 1) 
	(MOVEM 1 -2 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG9 	(MOVE 1 -7 P) 
	(JUMPE 1 TAG16) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -4 P) 
	(MOVEM 1 -2 P) 
TAG10 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG14) 
	(HLRZ@ 1 1) 
	(MOVEI 3 (QUOTE NIL)) 
	(MOVE 2 -10 P) 
	(MOVEM 1 -3 P) 
	(CALL 3 (E LMASSOC)) 
	(MOVEM 1 -1 P) 
	(PUSH P (C 0 0 TAG48 0)) 
	(PUSH P 1) 
	(HLRZ@ 1 -11 P) 
	(CALL 1 (E NCONS)) 
	(PUSH P 1) 
	(MOVNI 6 2) 
	(JCALL 14 (E NCONC)) 
TAG48 	(HLRZ@ 3 -11 P) 
	(MOVE 2 -9 P) 
	(HLRZ@ 1 -1 P) 
	(CALL 3 (E PRINRAD1)) 
	(MOVEM 1 -9 P) 
	(HRRZ@ 1 -11 P) 
	(MOVEM 1 -11 P) 
TAG11 
TAG12 
TAG13 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG10) 
TAG14 
TAG15 	(HRRZ@ 1 -7 P) 
	(MOVEM 1 -7 P) 
	(JRST 0 TAG9) 
TAG16 	(MOVE 1 0 P) 
	(HRRZ@ 1 -12 P) 
	(HLRZ@ 1 1) 
	(HRRZ@ 1 1) 
	(MOVE 2 -10 P) 
	(HLRZ@ 1 1) 
	(CALL 2 (E PRINCTAB)) 
	(MOVE 1 -9 P) 
	(SUB P (C 0 0 8 8)) 
TAG32 
TAG20 	(SUB P (C 0 0 8 8)) 
	(POPJ P) 
	NIL 

(LAP PRINCTAB SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -3 P) 
	(JUMPE 1 TAG9) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -2 P) 
	(HRRZ@ 1 1) 
	(MOVEI 3 (QUOTE NIL)) 
	(MOVE 2 -4 P) 
	(HLRZ@ 1 1) 
	(CALL 3 (E LMASSOC)) 
	(MOVEM 1 -1 P) 
	(HRRZ@ 1 1) 
	(PUSH P 1) 
	(HRRZ@ 1 -3 P) 
	(HRRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(PUSH P 1) 
	(HLRZ@ 1 -3 P) 
	(PUSH P 1) 
	(HRRZ@ 2 -5 P) 
	(HRRZ@ 2 2) 
	(HRRZ@ 2 2) 
	(PUSH P 2) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG2 	(MOVE 2 -2 P) 
	(JUMPN 2 TAG18) 
	(JRST 0 TAG5) 
TAG18 	(HLRZ@ 2 -2 P) 
	(MOVEM 2 -1 P) 
	(CAIE 2 (QUOTE FV)) 
	(JRST 0 TAG20) 
	(JRST 0 TAG4) 
TAG20 	(MOVEI 3 (QUOTE NIL)) 
	(MOVE 2 -10 P) 
	(MOVE 1 -1 P) 
	(CALL 3 (E LMASSOC)) 
	(MOVE 2 0 P) 
	(HLRZ@ 1 1) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 0 P) 
TAG3 
TAG4 	(HRRZ@ 2 -2 P) 
	(MOVEM 2 -2 P) 
	(JRST 0 TAG2) 
TAG5 	(MOVE 2 0 P) 
	(MOVE 1 -5 P) 
	(CALL 2 (E *APPEND)) 
	(MOVE 3 1) 
	(MOVE 2 -4 P) 
	(EXCH 1 -3 P) 
	(CALL 3 (E PRINENTRY)) 
	(SUB P (C 0 0 6 6)) 
TAG6 
TAG7 
TAG8 	(HRRZ@ 1 -3 P) 
	(MOVEM 1 -3 P) 
	(JRST 0 TAG1) 
TAG9 	(MOVE 1 0 P) 
	(SUB P (C 0 0 6 6)) 
	(POPJ P) 
	NIL 

(LAP PRINRAD0 SUBR) 
	(PUSH P 1) 
	(MOVEI 1 (QUOTE 0)) 
	(MOVEM 1 (SPECIAL XLATN)) 
	(MOVE 2 0 P) 
	(MOVEI 1 (QUOTE 5)) 
	(CALL 2 (E PRINNUM)) 
	(CALL 0 (E TERPRI)) 
	(MOVEI 1 (QUOTE NIL)) 
	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL 

(LAP PRINENTRY SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 3) 
	(EXCH 2 1) 
	(MOVEI 1 (QUOTE 3)) 
	(CALL 2 (E PRINNUM)) 
	(MOVE 1 -1 P) 
	(CALL 1 (E ATOM)) 
	(JUMPE 1 TAG9) 
	(MOVE 1 -1 P) 
	(CALL 1 (E PRIN1)) 
	(JRST 0 TAG8) 
TAG9 	(MOVEI 1 (QUOTE X)) 
	(CALL 1 (E PRIN1)) 
	(MOVE 1 (SPECIAL XLATN)) 
	(CALL 1 (E ADD1)) 
	(MOVEM 1 (SPECIAL XLATN)) 
	(CALL 1 (E PRIN1)) 
	(MOVE 2 -1 P) 
	(MOVE 1 (SPECIAL XLATN)) 
	(CALL 2 (E CONS)) 
	(MOVE 2 (SPECIAL XLATETABLE)) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 (SPECIAL XLATETABLE)) 
TAG10 
TAG8 	(PUSH P 0 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVE 2 1) 
	(MOVEM 1 -1 P) 
	(MOVEI 1 (QUOTE 3)) 
	(CALL 2 (E PRINNUM)) 
TAG2 
TAG3 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(SUB P (C 0 0 3 3)) 
	(CALL 0 (E TERPRI)) 
	(MOVEI 1 (QUOTE NIL)) 
	(SUB P (C 0 0 3 3)) 
	(POPJ P) 
	NIL 

(LAP PRINNUM SUBR) 
	(MOVE 1 2) 
	(JCALL 1 (E PRIN1)) 
	NIL 

(LAP WIDTH SUBR) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE ((99999 6) (9999 5) (999 4) (99 3) (9 2) (0 1))) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(CALL 1 (E CADR)) 
	(MOVEM 1 0 P) 
TAG2 
TAG3 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(HLRZ@ 2 -1 P) 
	(MOVE 1 -3 P) 
	(CALL 2 (E *GREAT)) 
	(JUMPN 1 TAG4) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(SUB P (C 0 0 4 4)) 
	(POPJ P) 
	NIL 

(LAP PRINRADOFF SUBR) 
	(PUSH P 1) 
	(MOVEI 1 (QUOTE STRUCTURE=)) 
	(CALL 1 (E PRIN1)) 
	(MOVE 1 0 P) 
	(CALL 1 (E PRINT)) 
	(PUSH P (SPECIAL XLATETABLE)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(MOVEI 1 (QUOTE X)) 
	(CALL 1 (E PRIN1)) 
	(HLRZ@ 1 -1 P) 
	(CALL 1 (E PRIN1)) 
	(MOVEI 1 (QUOTE =)) 
	(CALL 1 (E PRIN1)) 
	(HRRZ@ 1 -1 P) 
	(CALL 1 (E PRINT)) 
TAG2 
TAG3 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(SUB P (C 0 0 3 3)) 
	(MOVEI 1 (QUOTE END*)) 
	(CALL 1 (E PRINT)) 
	(CLEARM 1 (SPECIAL XLATETABLE)) 
	(MOVEI 1 (QUOTE NIL)) 
	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL